As computer technology has advanced, computers have become increasingly commonplace in homes, businesses, and elsewhere, and have become increasingly inter-connected. Local area networks have become commonplace in businesses, and are becoming increasingly common in homes. Furthermore, these local networks are becoming increasingly connected to wide area networks (e.g., the Internet), allowing communication among computers throughout the world.
One task that many users often like to perform with their computers is to generate hard copies of their documents by printing them to a printer. However, given the computing power of many modem computers, the documents to be printed can be fairly complex and require a substantial amount of time at the printer to process the documents (that is, to convert them to a format that the print engine of the printer is able to render and generate a hard copy of the document contents). This substantial amount of time can cause the printer to print pages of documents at a slower rate than it is mechanically capable of printing, which is typically undesirable to the user. For example, a printer capable of printing 25 pages per minute may only be able to print 10 pages per minute due to the substantial amount of processing that the printer is performing.
One solution to this problem is to build printers with faster components (e.g., controllers and/or processors) that can process the documents faster and thus print the documents faster. However, such faster components can significantly increase the cost of the printers. Thus, there remains a need to improve the speed of processing of documents for printing by printers without significantly increasing the cost of the printer.